﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace FlyingCircusWebIS.Models
{
    public class Pessoa
    {
        private int idPessoa;
        private string nivelPessoa;
        private string usuarioSistema;
        private string senhaSistema;
        private string nomeCompleto;
        private string sexo;
        private string cpf;
        private DateTime dataNascimento;
        private string email;
        private string ocupacao;
        private Decimal? renda;
        private string descontoEspecial;
        private Decimal? porcDescontoEspecial;
        private string recebeInfoMarketing;
        private string cadastroAtivo;

        // Chave estrangeira
        private int idEndereco;


        // Composição de classes
        public Endereco Endereco { get; set; }
        public List<Telefone> Telefones { get; set; }

        public int IdPessoa
        {
            get { return idPessoa; }
            set
            {
                idPessoa = value;
            }
        }

        public string NivelPessoa
        {
            get { return nivelPessoa; }
            set
            {
                if (value != null && value.Length <= 1)
                    nivelPessoa = value.ToUpper();
            }
        }

        public string UsuarioSistema
        {
            get { return usuarioSistema; }
            set
            {
                if (value != null && value.Length <= 20)
                    usuarioSistema = value;
            }
        }

        public string SenhaSistema
        {
            get { return senhaSistema; }
            set
            {
                if (value != null && value.Length <= 300)
                    senhaSistema = value;
            }
        }

        public string NomeCompleto
        {
            get { return nomeCompleto; }
            set
            {
                if (value != null && value.Length <= 150)
                    nomeCompleto = value;
            }
        }

        public string Sexo
        {
            get { return sexo; }
            set
            {
                if (value != null && value.Length <= 1)
                    sexo = value.ToUpper();
            }
        }

        public string CPF
        {
            get { return cpf; }
            set
            {
                if (value != null && value.Length <= 11)
                    cpf = value;
            }
        }

        public DateTime DataNascimento
        {
            get { return dataNascimento; }
            set
            {
                dataNascimento = value;
            }
        }

        public string Email
        {
            get { return email; }
            set
            {
                if (value != null && value.Length <= 100)
                    email = value;
            }
        }

        public string Ocupacao
        {
            get { return ocupacao; }
            set
            {
                if (value != null && value.Length <= 50)
                    ocupacao = value;
            }
        }

        public Decimal? Renda
        {
            get { return renda; }
            set
            {
                renda = value;
            }
        }

        public string DescontoEspecial
        {
            get { return descontoEspecial; }
            set
            {
                if (value != null && value.Length <= 1)
                    descontoEspecial = value.ToUpper();
            }
        }

        public Decimal? PorcDescontoEspecial
        {
            get { return porcDescontoEspecial; }
            set
            {
                porcDescontoEspecial = value;
            }
        }

        public string RecebeInfoMarketing
        {
            get { return recebeInfoMarketing; }
            set
            {
                if (value != null && value.Length <= 1)
                    recebeInfoMarketing = value.ToUpper();
            }
        }

        public int IdEndereco
        {
            get { return idEndereco; }
            set
            {
                idEndereco = value;
            }
        }

        public string CadastroAtivo
        {
            get { return cadastroAtivo; }
            set
            {
                if (value != null && value.Length <= 1)
                    cadastroAtivo = value.ToUpper();
            }
        }

    }
}